﻿namespace HiSport.Application.HiSportService.Bas.BasVenueMemberManagement.Dtos
{
    public class VenueMemberDto
    {
        public long Id { get; set; }
        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; }

        public string Phone { get; set; }

        /// <summary>
        /// 头像
        /// </summary>
        public string HeadUrl { get; set; }

        /// <summary>
        /// 性别
        /// </summary>
        public GenderEnum Sex { get; set; }

        /// <summary>
        /// 生日
        /// </summary>
        public DateTime? Birthday { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public virtual DateTime? CreateTime { get; set; }

        /// <summary>
        /// 创建者Id
        /// </summary>
        public virtual long? CreateUserId { get; set; }

        public string? CreateUserName { get; set; }

        /// <summary>
        /// 是否粉丝
        /// </summary>
        public bool IsFans { get; set; }

    }

    public class VenueMemberPageIndexDto : BasePageInput
    {
        /// <summary>
        /// 昵称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 电话
        /// </summary>
        public string Phone { get; set; }

        /// <summary>
        /// 是否粉丝
        /// </summary>
        public bool? IsFans { get; set; }


    }

    public class VenueMemberCreateOrUpdateDto
    {
        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 头像
        /// </summary>
        public string HeadUrl { get; set; }

        /// <summary>
        /// 性别
        /// </summary>
        public GenderEnum Sex { get; set; }

        [Required, MaxLength(20)]
        public string Phone { get; set; }

        /// <summary>
        /// 生日
        /// </summary>
        public DateTime? Birthday { get; set; }

        /// <summary>
        /// 是否粉丝
        /// </summary>
        public bool IsFans { get; set; }

        /// <summary>
        /// 注册渠道
        /// </summary>
        [SugarColumn(ColumnDescription = "注册渠道")]
        public SignupSourceTypeEnum SignupSource { get; set; } = SignupSourceTypeEnum.Sys;
    }

    /// <summary>
    /// 修改会员等级
    /// </summary>
    public class VenueMemberGradeUpdateDto
    {
        /// <summary>
        /// 
        /// </summary>
        public long MemberGradeid { get; set; }

        [Required, MaxLength(20)]
        public string Phone { get; set; }
    }
}
